package com.itheima.mapper;

import com.itheima.pojo.Brand;
import org.apache.ibatis.annotations.*;

import java.util.List;

public interface BrandMapper {

    /**
     * 查询所有的品牌
     */
    @Select("select * from tb_brand")
    List<Brand> selectAll();

    /**分页查询  首页加载进去就是用这个查询的方法
     *
     * @param start 当前页面开始的位置  (跳过多少条数据)
     * @param pageSize 当前页面显示的条数
     * @param brand 当前页面的查询条件
     */
    List<Brand> selectByPage(@Param("start") int start, @Param("pageSize") int pageSize, @Param("brand") Brand brand);

    /**查询符合当前分页条件的数据的总条数
     *
     * @param brand 查询条件
     */
    int selectTotal(@Param("brand") Brand brand);


    //传入用户对象查询  用于搜索
    List<Brand> selectByBrand(Brand brand);

    @Insert("insert into tb_brand values(null,#{brandName},#{companyName},#{ordered},#{description},#{status})")
    int add(Brand brand);

    @Select("select * from tb_brand where id=#{id}")
    Brand selectById(Integer id);

    @Update("UPDATE tb_brand SET brand_name = #{brandName}, company_name = #{companyName},ordered = #{ordered},description =#{description},status = #{status} WHERE id = #{id}")
    int update(Brand brand);

    //修改状态
    @Update("UPDATE tb_brand SET status=#{status} where id=#{id}")
    void updateStatus(@Param("id") int id,@Param("status") int status);

    @Delete("delete from tb_brand where id=#{id}")
    int deleteById(Integer id);

    //批量删除
    int deleteByIds(@Param("ids") int[] ids);

}
